package models;

import play.db.jpa.Model;

import play.*;
import play.db.jpa.*;
import javax.persistence.*;

import org.joda.time.DateTime;

import java.util.*;

public class ContaExtrato extends Model {
	
	//Atributos
	
	private long codContaExtrato;
	private long codUsuario;
	
	@Temporal(TemporalType.DATE)
	private DateTime dataLancamento;
	
	@Column(length = 2)
	private String tipoMovimentacao;
	private long codFavorecido;
	private float valor;
	private float saldoAtual;
	private long codCaixa;
	
	@Column(length = 6)
	private String codConta;
	
	//Métodos de acesso

	public long getCodContaExtrato()
	{
		return this.codContaExtrato;
	}
	
	public long getCodUsuario()
	{
		return this.codUsuario;
	}
	
	public DateTime getDataLancamento()
	{
		return this.dataLancamento;
	}
	
	public String getTipoMovimentacao()
	{
		return this.tipoMovimentacao;
	}
	
	public long getCodFavorecido()
	{
		return this.codFavorecido;
	}
	
	public float getValor()
	{
		return this.valor;
	}
	
	public float getSaldoAtual()
	{
		return this.saldoAtual;
	}
	
	public long getCodCaixa()
	{
		return this.codCaixa;
	}
	
	public String getCodConta()
	{
		return this.codConta;
	}
	
	//Construtor
	
	public ContaExtrato(long codUsuario,String tipoMovimentacao, long codFavorecido, 
			float valor,long codCaixa,String codConta)
	{
		//this.codContaExtrato  = codContaExtrato;
		this.codUsuario		  = codUsuario;
		this.tipoMovimentacao = tipoMovimentacao;
		this.codFavorecido	  = codFavorecido;
		this.valor			  = valor;
		this.codCaixa		  = codCaixa;
		this.codConta		  = codConta;
		this.dataLancamento	  = new DateTime();
		//TODO implementar query para pegar o saldo atual
		//this.saldoAtual	= resultado da query 	
	}
	

}